Refactor: reenable root_path as config parameter#311
Merged
99Lys merged 8 commits intodremio:mainfrom Dec 3, 2025
Merged
Conversation
… well in the logs" This reverts commit cf3c30e.
9d7ee9e to
8fa148f
Compare
Contributor
There was a problem hiding this comment.
Pull request overview
This PR refactors the configuration parameter handling to differentiate between schema (for views) and root_path (for tables), making the adapter more consistent with dbt standards and less confusing for users.
Key changes:
root_pathconfig now only applies to table materializations and is appended to the defaultroot_pathfrom profiles.ymlschemaconfig now only applies to view materializations and is appended to the defaultschemafrom profiles.yml- Profile template hints updated to reflect the correct alias mappings
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| tests/functional/adapter/dremio_specific/test_nested_schema.py | Comprehensive test refactor with new tests validating that root_path works for tables and schema works for views, with tests confirming the wrong config is ignored |
| tests/functional/adapter/dremio_specific/test_exact_search.py | Updated table model to use root_path config instead of schema |
| dbt/include/dremio/profile_template.yml | Corrected alias hints: object_storage_path now aliases to root_path, dremio_space_folder now aliases to schema |
| dbt/include/dremio/macros/get_custom_name/get_custom_schema.sql | Added logic to use node.config.root_path for datalake nodes (tables) instead of the generic custom_schema_name parameter |
| CHANGELOG.md | Added entry documenting the reenabling of object_storage_path and root_path as config parameters |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
ennuite
approved these changes
Nov 27, 2025
simonpannek
approved these changes
Dec 2, 2025
Member
simonpannek
left a comment
There was a problem hiding this comment.
LGTM - if this is a breaking change, customers should probably be notified accordingly.
Also make sure to address the current test failures!
valterfrancisco-dremio
approved these changes
Dec 3, 2025
bcmeireles
approved these changes
Dec 3, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Reenable
root_pathand respective aliases as config parameters.Description
Currently, in order to set custom schemas for specific models, we use the config parameter
schema(and respective aliases).However, in the current implementation,
dremio_space_folder/schemaare both effective regardless of the materialization type (andobject_storage_path/root_pathwere disabled). Since, in our adapter's context,schematypically belongs to views, it can be confusing to use only one term for all materialization types.Therefore, in order to maintain consistency and be compliant with dbt standards, we will refactor how custom schemas can be set by following our internally defined aliases, i.e.:
schemaand respective aliases - if used in config, will only be effective if the model is a viewroot_pathand respective aliases - if used in config, will only be effective if the model is a tableBoth will behave the same way: append the value provided in config to the respective original one in profiles.yml.
Test Results
test_nested_schema.pytest_exact_search.pyto use the correct config (replacedschematoroot_path)Changelog